﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Asion.Dapper
{
    /// <summary>
    /// crud async repositroy
    /// </summary>
    public interface ICrudAsyncRepository<TEntity> : IRepository where TEntity : IEntity
    {

     /*   Task<int> InsertAsync(TEntity model);


        Task<int> BatchInsertAsync(IList<TEntity> models, int count = DapperConfiguration.batch_insert_count);


        Task<bool> DeleteAsync(IDictionary<string, string> dic);


        Task<bool> DeleteListAsync(string where, object parameters);


        Task<bool> UpdateAsync(TEntity model);

        [Obsolete("don't suggest get all columns")]
        Task<TEntity> GetAsync(IDictionary<string, string> dic);


        Task<IEnumerable<TEntity>> GetListAsync(string where, object parameters);


        Task<Page<TEntity>> GetListPageAsync(int pageNumber, int rowsPerPage, string conditions, string orderBy, object parameters);


        Task<int> RecordCountAsync(string conditions = "", object parameters = null);*/
    }
}
